This invention relates generally to data conversion and, more particularly, to a method for the adaptive mapping of matrix data to sets of polygons.
Data can be disseminated in a variety of formats. Some data is ideally suited to be disseminated in a matrix, e.g., bitmap format. For example, weather data and thermal imaging data are typically disseminated as bitmaps coded into electronic binary files. This format enables easy processing to display on computer monitors. However, there are some problems with this format. Since large files are not uncommon (e.g., 40 megabytes), great demands are placed on data link facilities and processing platforms.
Prior art systems have attempted to solve the problems associated with matrix data by creating polygons in order to decrease the file sizes. These prior art systems create polygons from matrix data by limiting the process to convex sets of data by finding the centroid and selecting vertices at the intersection of the boundary and rays drawn from the center which are spaced by a specified number of degrees. Manual intervention may be used to complete the mapping. This process has a couple of problems. First, there is an assumption that the polygons are convex in shape. To overcome this assumption which is often incorrect, a manual method may be used.
Manual methods use a drawing device, such as a mouse, to draw polygons. Manual methods have several drawbacks. Manual methods are slow and cannot keep up with the currently available data. For example, weather data is updated at fairly frequent intervals, such as, every five minutes. Manual methods are low fidelity. That is, they are not very accurate. Manual methods also produce inconsistent results. That is, the fidelity of the polygons varies with different individuals and with a single individual over time, as he or she becomes tired or bored. Thus, a need exists for a method for disseminating matrix data in a format which will ease the burden placed on data link facilities and processing platforms. The method should accommodate non-convex (e.g., concave) polygons without requiring manual intervention.
In accordance with the present invention, a system and method transform matrix data into smaller file sizes by creating polygons for the matrix data by using an adaptive fidelity polygon process.
In accordance with other aspects of the invention, the adaptive fidelity polygon process converts a matrix of data into at least one polygon. The process is accomplished via the following steps: (1) determining the open, semi-cardinal directions for each cell in the matrix; (2) determining blocked cardinal directions for each cell in the matrix; (3) determining a list of cells to check based on a specified color value; (4) determining a list of boundary cells from the list of cells to be checked; and (5) determining a list of vertices from the list of boundary cells. By plotting the vertices in sequential order, one or more polygons which represent the original matrix data can be displayed.
In accordance with other aspects of the invention, the fidelity of the polygon representation can be adjusted automatically to meet other criteria. For example, logic can be performed repeatedly in order to reduce the fidelity until a polygon is completely represented in fewer than a maximum number of vertices or until a whole matrix is represented within a prescribed file size.